{"componentChunkName":"component---src-templates-blog-js","path":"/blog/oracle-predstavila-java-14","result":{"data":{"contentfulBlog":{"title":"Oracle представила Java 14","id":"12de51b2-b17b-52f5-9ffb-44eca7a8563b","slug":"oracle-predstavila-java-14","content":{"childMarkdownRemark":{"html":"<p>Oracle объявила о выпуске Java 14 (Oracle JDK 14). Java 14 демонстрирует неизменную приверженность Oracle ускорению инноваций, предоставляя предприятиям и сообществу разработчиков новые усовершенствования каждые шесть месяцев в рамках релиза функциональных обновлений (Feature Release).</p>\n<p>Новейший комплект Java Development Kit (JDK) предлагает разработчикам новые функции, в том числе две новые долгожданные ознакомительные возможности (Preview Features) – Pattern Matching for instanceof (JEP 305) и Records (JEP 359), а также Text Blocks (JEP 368) для повторного превью. Кроме того, в новом релизе Java добавлена поддержка конструкций выбора Switch Expressions, включены новые API-интерфейсы для непрерывного мониторинга данных JDK Flight Recorder, расширена доступность Z Garbage Collector с малой задержкой для macOS и Windows, а в модулях инкубатора представлен упаковщик самодостаточных приложений Java и новый API-интерфейс для безопасного и эффективного доступа к областям внешней памяти вне динамически распределяемой heap-памяти Java.</p>\n<p>«Java 14 – еще одно свидетельство преимуществ шестимесячного цикла обновления: разработчики получают доступ к функциям, которых они в противном случае ожидали бы годами, – отметил Джордж Сааб, вице-президент Oracle по разработке платформы Java, – JDK 14 не только содержит ряд улучшений для повышения продуктивности разработчиков, в этот релиз также впервые включен важный контент из таких проектов, как Project Panama – расширенный интерфейс доступа к внешней памяти (Foreign-Memory Access API, JEP 370) и дальнейшие усовершенствования из Project Amber – Pattern Matching (JEP 305) и Records (JEP 359). Эти крупные улучшения свидетельствуют об обширной работе, проводимой в рамках данных новаторских проектов».</p>\n<p>Релиз Java 14 – результат скоординированной ИТ-разработки, включающей открытый анализ, еженедельные сборки и активное сотрудничество между инженерами Oracle и членами мирового сообщества разработчиков Java в рамках OpenJDK Community и Java Community Process. Новые функции, представленные в Java 14, включают в себя:</p>\n<p>JEP 305: Pattern Matching for instanceof (превью) – Данное знакомство с технологией расширяет функциональность сопоставления с шаблоном для оператора instanceof. Это повышает производительность труда разработчика, устраняя необходимость в шаблонном коде, и позволяет получить более компактный и типобезопасный код.</p>\n<p>JEP 343: Packaging Tool (инкубатор) – Предоставляет разработчикам возможность упаковывать приложения Java для распространения в специфичных для платформ форматах. Это помогает создавать современные приложения в виде единого поставляемого пакета библиотек, в котором объединены среда исполнения и код приложения. Эти инструменты представлены в модуле инкубатора и позволяют передавать разработчикам неконечные версии API и нефинальные версии инструментов для получения их отзывов. Такие API/инструменты либо дорабатываются до финальных версий, либо удаляются в следующем релизе.</p>\n<p>JEP 345: NUMA-Aware Memory Allocation for G1 – Повышает общую производительность сборщика мусора G1 в системах с архитектурой памяти NUMA (Non-Uniform Memory Access).</p>\n<p>JEP 349: JFR Event Streaming – Открывает данные JDK Flight Recorder (JFR) для непрерывного мониторинга. Это упростит доступ различных инструментов и приложений к данным JFR и будет стимулировать дальнейшие инновации.</p>\n<p>JEP 352: Non-Volatile Mapped Byte Buffers – Добавляет режим мэппинга файлов для JDK при использовании энергонезависимой памяти. Постоянный характер энергонезависимой памяти упрощает обеспечение неизменности данных и улучшает производительность, что и используется этой функцией.</p>\n<p>JEP 358: Helpful NullPointerExceptions – Повышает удобство использования исключений NullPointerException, точно описывая, какая переменная была равна нулю, и предоставляя другую полезную информацию. Это повысит продуктивность разработчиков и улучшит качество многих инструментов разработки и отладки.</p>\n<p>JEP 359: Records (превью) – Эта ознакомительная возможность обеспечивает компактный синтаксис объявления классов, которые содержат поверхностные неизменяемые данные (shallowly immutable). Эта функция может значительно сократить шаблонный код в классах такого типа, но самое большое преимущество – возможность моделировать данные как данные. Она позволит легко, однозначно и кратко объявлять эти поверхностные неизменяемые агрегаты номинальных данных.</p>\n<p>JEP 361: Switch Expressions (стандартная) – Данная функция присутствовала в JDK 12 и JDK 13 как ознакомительная и теперь добавлена в качестве стандартной. Это позволяет использовать конструкцию выбора switch как оператор или выражение. Данная функция упрощает кодирование и открывает возможность применения функции сопоставления с шаблоном (Pattern Matching, JEP 305), представленной в этом релизе в качестве ознакомительной.</p>\n<p>JEP 364: ZGC on macOS и JEP 365: ZGC on Windows – Хотя большинству пользователей, которым нужна функция Z Garbage Collector, также необходима масштабируемость сред на основе Linux, часто возникает потребность в развертывании и тестировании для поддержки ZGC в macOS и Windows. Существуют также приложения для ПК, ориентированные на Windows и macOS, которые получат преимущества от использования ZGC.</p>\n<p>JEP 368: Text Blocks (второе превью) – Текстовые блоки впервые были представлены в качестве превью в Java 13, и после отзывов и замечаний конечных пользователей в них были добавлены улучшения. Теперь текстовые блоки снова предлагаются как ознакомительная возможность в Java 14 с целью сделать их стандартом в будущем выпуске JDK. Текстовые блоки позволяют легко выражать строковые последовательности, которые занимают несколько строк исходного кода. Это улучшает читаемость текстовых фрагментов в программах Java, которые представляют код, написанный на отличных от Java языках. Поддерживается миграция из строковых литералов за счет того, что любая новая конструкция может выражать тот же набор строк, что и строковый литерал, интерпретировать те же escape-последовательности и обрабатываться так же, как строковый литерал.</p>\n<p>JEP 370: Foreign-Memory Access API (инкубатор) – API-интерфейс, позволяющий программам Java безопасно и эффективно получать доступ к областям внешней памяти вне динамически распределяемой heap-памяти Java.</p>\n<p>Пользователям и предприятиям, которым нужна коммерческая поддержка, Oracle также предлагает подписку Oracle Java SE Subscription – недорогое и предсказуемое решение технической поддержки. Это предложение используется тысячами крупных и малых организаций по всему миру и позволяет им получить лицензию Java SE и всестороннюю поддержку необходимых систем на требуемыйй период времени. Эти клиенты получают выгоду от гибкости и регулярного доступа к проверенным и сертифицированным обновлениям поддерживаемых релизов непосредственно от Oracle, касающихся производительности, стабильности и безопасности.</p>\n<p>Java продолжает оставаться в мире №1 языком программирования, предпочитаемым разработчиками программного обеспечения. И, как свидетельствует своевременное предоставление инноваций в Java 14 благодаря продуманному планированию и вовлеченности экосистем, платформа Java остается основным инструментом для разработки современных приложений.</p>\n<p>Источник : <a href=\"https://www.cnews.ru/news/line/2020-03-19_oracle_predstavila_java_14\">https://www.cnews.ru/news/line/2020-03-19_oracle_predstavila_java_14</a></p>"}},"seoTitle":"Oracle представила Java 14","seoDescription":"Данное знакомство с технологией расширяет функциональность сопоставления с шаблоном для оператора instanceof.","seoAuthor":"Oracle объявила о выпуске Java 14 (Oracle JDK 14). ","seoKeywords":null,"seoImage":{"fluid":{"base64":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAMABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAUECf/EACMQAAIBBAICAgMAAAAAAAAAAAECAwAEBRESIQYTImExUXH/xAAVAQEBAAAAAAAAAAAAAAAAAAABA//EABsRAAICAwEAAAAAAAAAAAAAAAABAhEDEmHw/9oADAMBAAIRAxEAPwDqTksjDirOS4ndUVQdBmA5HW+I+zqpmG8oXKepZIDBzjVva0sfEudfALy573sdqPxVa8sLbIxCO6t4rmMHkEmQOAf3o/01ji8Xw0DxvFibGN43EiMlsgKt1ph10eh39Ch2Xg8Si9rv3SnSlKSB/9k=","aspectRatio":1.6558861578266495,"src":"//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1200&q=100","srcSet":"//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=300&h=181&q=100 300w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=600&h=362&q=100 600w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1200&h=725&q=100 1200w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1280&h=773&q=100 1280w","sizes":"(max-width: 1200px) 100vw, 1200px"}},"featuredImage":{"fluid":{"base64":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAMABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAUECf/EACMQAAIBBAICAgMAAAAAAAAAAAECAwAEBRESIQYTImExUXH/xAAVAQEBAAAAAAAAAAAAAAAAAAABA//EABsRAAICAwEAAAAAAAAAAAAAAAABAhEDEmHw/9oADAMBAAIRAxEAPwDqTksjDirOS4ndUVQdBmA5HW+I+zqpmG8oXKepZIDBzjVva0sfEudfALy573sdqPxVa8sLbIxCO6t4rmMHkEmQOAf3o/01ji8Xw0DxvFibGN43EiMlsgKt1ph10eh39Ch2Xg8Si9rv3SnSlKSB/9k=","aspectRatio":1.6558861578266495,"src":"//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1200&q=100","srcSet":"//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=300&h=181&q=100 300w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=600&h=362&q=100 600w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1200&h=725&q=100 1200w,\n//images.ctfassets.net/aphotxgpdvah/2EL7QLeW6acWxBxkcoK63T/09655a379de240e3a4a5a5fe43e21b15/NPFNXRIwN6w.jpg?w=1280&h=773&q=100 1280w","sizes":"(max-width: 1200px) 100vw, 1200px"}}}},"pageContext":{"id":"12de51b2-b17b-52f5-9ffb-44eca7a8563b","prev":{"id":"eaa37a92-865d-5bbf-b8e7-1ecaf70825dc","slug":"aruba-predstavila-servis-5g-rouminga-aruba-air-pass"},"next":{"id":"263c7bf2-afa5-5aa8-947c-70905a6904e1","slug":"minkomsvyaz-perenesla-ucheniya-po-suverennomu-runetu-iz-za-koronavirusa"}}}}